#define _CRT_SECURE_NO_WARNINGS


#include "List.h"
void TestList1()
{
	ListNode* phead = ListInit(NULL); 
	ListPushBack(phead, 1);
	ListPushBack(phead, 2);
	ListPushBack(phead, 3);
	ListPushBack(phead, 4);
	ListPushBack(phead, 5);

	ListPrint(phead);

	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListPrint(phead);

	ListPushFront(phead, 1);
	ListPushFront(phead, 2);
	ListPushFront(phead, 3);
	ListPushFront(phead, 4);
	ListPushFront(phead, 5);
	ListPrint(phead);

}
void TestList2()
{
	ListNode* phead = ListInit(NULL);
	ListPushFront(phead, 1);
	ListPushFront(phead, 2);
	ListPushFront(phead, 3);
	ListPushFront(phead, 4);
	ListPushFront(phead, 5);
	ListPrint(phead);



	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPrint(phead);
	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPrint(phead);
	ListNode* pos = ListFind(phead, 3);
	ListInsert(pos, 10);
	ListPrint(phead);

	ListErase(&pos);
	ListPrint(phead);

	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPopFront(phead);
	//ListPopFront(phead);

	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListPrint(phead);
	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListPopBack(phead);
	//ListClear(phead);
	ListDestroy(&phead);
	//ListPrint(phead);
}

int main()
{
	//TestList1();
	TestList2();
	return 0;
}